//package com.hippo.core.ui.components
//
//import android.os.ParcelFileDescriptor
//import androidx.compose.foundation.Image
//import androidx.compose.foundation.layout.Box
//import androidx.compose.foundation.layout.BoxWithConstraints
//import androidx.compose.foundation.layout.fillMaxSize
//import androidx.compose.foundation.layout.fillMaxWidth
//import androidx.compose.foundation.layout.height
//import androidx.compose.foundation.lazy.LazyColumn
//import androidx.compose.runtime.Composable
//import androidx.compose.runtime.DisposableEffect
//import androidx.compose.ui.Modifier
//import androidx.compose.ui.layout.ContentScale
//import java.io.File
//
//@Composable
//fun PDFReader(file: File) {
//    Box(
//        modifier = Modifier.fillMaxSize()
//    ) {
//        val pdfRender = PdfRender(
//            fileDescriptor = ParcelFileDescriptor.open(
//                file,
//                ParcelFileDescriptor.MODE_READ_ONLY
//            )
//        )
//        DisposableEffect(key1 = Unit) {
//            onDispose {
//                pdfRender.close()
//            }
//        }
//        LazyColumn {
//            items(count = pdfRender.pageCount) { index ->
//                BoxWithConstraints(
//                    modifier = Modifier.fillMaxWidth()
//                ) {
//                    val page = pdfRender.pageLists[index]
//                    DisposableEffect(key1 = Unit) {
//                        page.load()
//                        onDispose {
//                            page.recycle()
//                        }
//                    }
//                    page.pageContent.collectAsState().value?.asImageBitmap()?.let {
//                        Image(
//                            bitmap = it,
//                            contentDescription = "Pdf page number: $index",
//                            modifier = Modifier.fillMaxWidth(),
//                            contentScale = ContentScale.FillWidth
//                        )
//                    } ?: Box(
//                        modifier = Modifier
//                            .fillMaxWidth()
//                            .height(
//                                page
//                                    .heightByWidth(constraints.maxWidth)
//                                    .pxToDp()
//                            )
//                    )
//                }
//            }
//        }
//    }
//}
